package com.nt.oam.service;

import java.util.List;

import com.nt.oam.domain.AntHospitalProject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nt.oam.vo.project.*;

/**
 * 项目信息Service接口
 *
 * @author JZFeng
 * @date 2025-02-05
 */
public interface IAntHospitalProjectService extends IService<AntHospitalProject> {
    /**
     * 查询项目信息
     *
     * @param projectId 项目信息主键
     * @return 项目信息
     */
    public AntHospitalProject selectAntHospitalProjectByProjectId(Long projectId);

    /**
     * 查询项目信息列表
     *
     * @param antHospitalProject 项目信息
     * @return 项目信息集合
     */
    public List<AntHospitalProject> selectAntHospitalProjectList(AntHospitalProject antHospitalProject);

    /**
     * 新增项目信息
     *
     * @param antHospitalProject 项目信息
     * @return 结果
     */
    public int insertAntHospitalProject(AntHospitalProject antHospitalProject);

    /**
     * 修改项目信息
     *
     * @param antHospitalProject 项目信息
     * @return 结果
     */
    public int updateAntHospitalProject(AntHospitalProject antHospitalProject);

    /**
     * 批量删除项目信息
     *
     * @param projectIds 需要删除的项目信息主键集合
     * @return 结果
     */
    public int deleteAntHospitalProjectByProjectIds(Long[] projectIds);

    /**
     * 删除项目信息信息
     *
     * @param projectId 项目信息主键
     * @return 结果
     */
    public int deleteAntHospitalProjectByProjectId(Long projectId);


    /**
     * 获取医院名称
     */
    public List<HospitalNameListVo> getHospitalNameList(String hospitalName);

    /**
     * 获取销售/交付人名称
     */
    public List<PersonListVo> getPersonNameList(String personName);


    /**
     * 获取医院负责人名称
     */
    public List<ChargeListVo> getChargeNameList(String chargeName);
    /**
     * 获取内部人员名称
     */
    public List<ChargeListVo> getInnerNameList(String innerName);

    /**
     * 获取项目名称列表
     */
    public List<ProjectNameListVo> getProjectNameList(String itemName);

    /**
     * 查询项目的详情信息
     *
     * @param projectId 项目信息主键
     * @return 项目信息
     */
    public ProjectDetailsVo selectProjectDetail(Long projectId);
    /**
     *  查询是否在修改
     */
    public int selectProjectModify(Long projectId);

    /**
     * 重新设置修改状态
     */
    public int updateProjectModify(Long projectId,Integer isModify);

}
